home *** CD-ROM | disk | FTP | other *** search
- ;; clargs.e 16dec - bind commandline args to $1,$2,etc
- ;; usage:
- ;; (load "clargs.e"), then can use $1,$2,etc.
- ;; modified
- ;; 28jun big change - convert numeric arguments from strings to numbers
-
- (define $0 nil)
- (define $1 nil) (define $2 nil) (define $3 nil)
- (define $4 nil) (define $5 nil) (define $6 nil)
- (define $7 nil) (define $8 nil) (define $9 nil)
- (define $nargs (length (command-line-args)))
-
- (let ((i 0)
- (args (command-line-args)))
- (while args
- (let ((symname (string->symbol (format #f "$~a" i))))
- ; (print `(set! ,symname (read ,(car args))))
- ;; convert numbers, leave string arguments
- (eval `(set! ,symname (let ((tmp (string->number ,(car args))))
- (or tmp ,(car args)))))
- (set! args (cdr args))
- (set! i (1+ i))
- )
- )
- )
-